package com.itheima.homework;
/*8、 【编号：809】

        我国的居民身份证号码，由由十七位数字本体码和一位数字校验码组成。
        请定义方法判断用户输入的身份证号码是否合法，并在主方法中调用方法测试结果。
        规则为：号码为18位，
        不能以数字0开头，前17位只可以是数字，最后一位可以是数字或者大写字母X。*/

public class HomeWork08 {
    public static void main(String[] args) {
        String id = "34010219970619253X";
        leg(id);
  } public static void leg(String id) {
long start = System.currentTimeMillis();
        char[] chars = id.toCharArray();//判定首位中间体是否为数字
        boolean d = (chars.length == 18);//判定是否输的是十八个长度的字符串
        boolean c = false;
        for (int i = 0; i < chars.length - 1; i++) {
            if (chars[i] <= '9' && chars[i] >= '0') {
                c = true;
            }
        }
        boolean a = !id.startsWith("0");//判定首位是否为0
        char e = 'X';//判定末位是否为X或数字
        char end = chars[chars.length - 1];
        boolean b = false;
        if (end == e || (end <= '9' && end >= 0)) {
            b = true;
        }
        if (a && b && c && d == true) {
            System.out.println("输入的没问题,可以滚了");
        } else {
            System.out.println("动动你的猪脑!又瞎JB输");
            long ed = System.currentTimeMillis();
            System.out.println(ed-start);
        }
    }
}

